#ifndef IMEDIALOADER_H
#define IMEDIALOADER_H


#include <QUrl>
#include <QList>
#include <QThread>

#include "MediaItem.h"

class IMediaLoader {
    Q_OBJECT

protected:
    IMediaLoader(QObject* parent): QThread(parent){}

public slots:
    virtual bool load(QList<QUrl>* urlList, int jobId)   = 0;

    virtual void clear()                      = 0;

public:
    virtual QList<MediaItem*>* getMediaItems() = 0;

signals:
    void finishedLoading(QList<MediaItem*>* items, int jobId);

    void errorOccured(const QString errorString);

};


#endif // IMEDIALOADER_H
